package com.xywl.escort.view.market;

import com.xywl.escort.bean.AddShoppingCartReq;
import com.xywl.escort.base.BasePresenter;
import com.xywl.escort.base.BaseView;
import com.xywl.escort.bean.BaseResp;
import com.xywl.escort.bean.CommentsReq;
import com.xywl.escort.bean.CommentsResp;
import com.xywl.escort.bean.GoodDetailResp;
import com.xywl.escort.bean.SpecResp;

class ProductDetailsContract {

    interface Presenter extends BasePresenter {
        void takeView(ProductDetailsContract.View view);

        void loadSpecific(String spuId, String skuId);

        void loadProductDetails(String spuId, String skuId);

        void addShoppingCart(AddShoppingCartReq req);

        void loadComments(CommentsReq req);
    }

    interface View extends BaseView<Presenter> {
        void loadSpecificSuccess(SpecResp.DataBean resp);

        void loadSpecificFailure(String msg);

        void updateProductDetails(GoodDetailResp.DataBean dataBean);

        void loadProductDetailsFailure();

        void addShoppingCartSuccess(BaseResp resp);

        void addShoppingCartFailure(String msg);

        void loadCommentsSuccess(CommentsResp.DataBean dataBean);

        void loadCommentsFailure();
    }
}
